Conventionally, there are known game systems that allow a user to play a game based on a load of the user. For example, a conventional game system includes a board type controller having a load sensor. In the game system, a load value is detected by the load sensor when the user stands on the board type controller, and the detected load value is transmitted as operation data to a game apparatus. In the game apparatus that has received the operation data, a game process is executed based on the load value represented by the operation data transmitted from the board type controller, and the content of the game process is displayed on a monitor connected to the game apparatus.
In the conventional game system, however, the result of the game process based on the load value represented by the operation data is displayed on the monitor connected to the game apparatus. It is premised that an existing television receiver or the like is used as the monitor, and generally a stationary display is used. On the other hand, when the user performs an operation on the board type controller, the operation is often based on an action of the user. However, since the monitor is stationary installed, the user is not allowed to view the result of the game process in a favorable situation according to the user's action.
Accordingly, an object of the exemplary embodiments is to provide a computer-readable storage medium, an information processing system, and an information processing method, which allow, when a process is performed in accordance with an operation based on an action of a user, the user to view the result of the process in a favorable situation.
In order to achieve the above-mentioned object, the exemplary embodiments have the following configurations. It should be understood that the scope of the exemplary embodiments is interpreted only by the scope of the claims. In event of any conflict between the scope of the claims and the scope of the description in this section, the scope of the claims has priority.
An example of a configuration of a computer-readable storage medium according to the exemplary embodiments has stored therein an information processing program executed on a computer of an information processing apparatus which is capable of displaying an image on a portable display device. The portable display device outputs at least attitude data based on an attitude of a body of the portable display device. The information processing program causes the computer to act as load obtaining means, object moving means, first virtual camera control means, and display control means. The load obtaining means obtains data based on a load applied to a load detection device. The object moving means causes an object arranged in a virtual world to move, based on the data obtained by the load obtaining means. The first virtual camera control means controls a first virtual camera which generates an image of the virtual world, based on the attitude data and a position of the object in the virtual world. The display control means displays, on the portable display device, a first image representing the virtual world viewed from the first virtual camera.
The information processing apparatus may be an apparatus for executing a game process and generating an image based on the game process, or may be a versatile apparatus such as a general personal computer. The portable display device may have a size small enough to be carried by a user. Typically, the portable display device may be a display device which allows the user, holding the portable display device with his/her both hands, to view an image displayed thereon. The portable display device may include other components than the means for outputting at least attitude data and the means for displaying the first image, like a terminal device of exemplary embodiments described later, or may not include other components. The load detection device may be, for example, a device which detects a load applied thereto when a user puts at least a part of his/her body thereon, or a device which outputs an on/off signal according to the load. It is considered that, when the user operates the load detection device, the user may stand on the load detection device with his/her bottoms of both feet contacting the upper surface thereof, or the user may put his/her one foot on the upper surface thereof, or the user may put another part (e.g., a hand) of his/her body on the upper surface thereof.
According to the above configuration, when the user performs an operation by using the load detection device and thereby a process of causing an object in a virtual world to move based on the user's operation is performed, the user is allowed to view the result of the process on the portable display device. Therefore, the user is allowed to view an image displayed on the portable display device while holding the portable display device. Accordingly, for example, the user is allowed to perform an operation in a new operation environment, and allowed to view the result of the process in a favorable situation for the user in accordance with the operation environment. Further, since the first virtual camera for generating an image of a virtual world displayed on the portable display device is controlled based on the attitude of the portable display device, when the user turns the portable display device to his/her desired direction, an image of a virtual world in the direction can be displayed on the portable display device. Thus, the user is allowed to operate the first virtual camera by moving the portable display device.
The information processing program may cause the computer to act as attitude calculation means. The attitude calculation means calculates an attitude of the portable display device, based on the attitude data. In this case, the first virtual camera control means may control the first virtual camera, based on the attitude of the portable display device calculated by the attitude calculation means, and the position of the object.
According to the above configuration, an attitude of the portable display device is calculated based on the attitude data, and the first virtual camera can be controlled based on the attitude of the portable display device.
The first virtual camera control means may control at least one of a position and an attitude of the first virtual camera in the virtual world, based on the attitude of the portable display device.
The first virtual camera control means may control at least one of a position and an attitude of the first virtual camera, by controlling a line-of-sight direction of the first virtual camera in the virtual world, the line-of-sight direction being based on the attitude of the portable display device.
The attitude calculation means may calculate an attitude of the portable display device with respect to a predetermined direction in a real space. The first virtual camera control means may control at least one of the position and the attitude of the first virtual camera, with reference to a direction which corresponds to the predetermined direction and is set in the virtual world, based on the attitude of the portable display device with respect to the predetermined direction in the real space.
When the predetermined direction is a direction of gravity in the real space, the attitude calculation means may calculate an attitude of the portable display device with respect to the direction of gravity. The first virtual camera control means may control at least one of the position and the attitude of the first virtual camera, with reference to a direction of gravity set in the virtual world, based on the attitude of the portable display device with respect to the direction of gravity in the real space.
The attitude calculation means may calculate at least an attitude in which the portable display device rotates around the direction of gravity in the real space. The first virtual camera control means may control the attitude of the first virtual camera by rotating the first virtual camera around the direction of gravity set in the virtual world, based on the attitude in which the portable display device rotates around the direction of gravity in the real space.
The first virtual camera control means may control an attitude of the first virtual camera so as to be the same as the attitude of the portable display device.
According to the above configuration, the attitude and the position of the first virtual camera are controlled based on the attitude of the portable display device. Therefore, when the user turns the portable display device to his/her desired direction, the user is provided with an image which makes the user feel as if he/she looks into the virtual world through the portable display device, and thereby the user is allowed to experience a sense of presence in the virtual world.
The first virtual camera control means may control the first virtual camera such that the object is included in the first image.
According to the above configuration, since the image of the object moved by the user is included in the image of the virtual world displayed on the portable display device, the operation of moving the object is facilitated.
The object moving means may cause the object to move in a direction based on the line-of-sight direction of the first virtual camera.
According to the above configuration, the direction of the virtual world displayed on the portable display device can be regarded as the movement direction of the object. Accordingly, the user is allowed to set the movement direction of the object in accordance with the attitude of the portable display device, and the virtual world viewed in the movement direction is displayed on the portable display device. Thus, the user is allowed to easily and intuitively set the movement direction of the object in his/her desired direction.
The portable display device may include at least one of a gyro sensor and an acceleration sensor. The attitude calculation means may calculate an attitude of the portable display device, based on data outputted from at least one of the gyro sensor and the acceleration sensor.
According to the above configuration, it is possible to accurately calculate an attitude of the portable display device by using data which is output from the gyro sensor and represents an angular velocity that occurs in the portable display device and/or data which is output from the acceleration sensor and represents an acceleration that occurs in the portable display device.
The display control means may display, separately from the first image, a second image representing the virtual world viewed from a second virtual camera, on another display device connected to the information processing apparatus.
The other display device is a display device connected to the information processing apparatus, such as a monitor 2 described later. Any type of display device may be used so long as it is separated from the portable display device, and is capable of displaying the second image generated by the information processing apparatus. For example, the other display device may be integrated with (in one housing) the information processing apparatus.
According to the above configuration, when performing a process based on an operation according to a load applied to the load detection device and an operation of moving the portable display device, the result of the process is displayed on another display device connected to the information processing apparatus as well as on the portable display device. Accordingly, the user is allowed to selectively use the images displayed on the two display devices, in accordance with the operation state or his/her preference, and allowed to view the image suitable for the user's operation. Further, the image displayed on the other display device connected to the information processing apparatus may be viewed by a person other than the user, thereby providing a favorable viewing environment when a plurality of persons view the result of the process.
The display control means may output image data representing the first image to the portable display device. In this case, the portable display device may include image data obtaining means and display means. The image data obtaining means obtains image data outputted from the information processing apparatus. The display means displays the first image represented by the image data obtained by the image data obtaining means.
According to the above configuration, the portable display device functions as a so-called thin client terminal which does not execute information processing.
The information processing program may cause the computer to act as compressed image generation means. The compressed image generation means generates compressed image data by compressing the image data representing the first image. In this case, the display control means may output the compressed image data generated by the compressed image generation means to the portable display device. The image data obtaining means may obtain the compressed image data outputted from the information processing apparatus. The portable display device may further include display image decompression means. The display image decompression means decompresses the compressed image data to obtain image data representing the first display image. In this case, the display means may display the first image represented by the image data which has been obtained by the image data obtaining means and decompressed by the display image decompression means.
According to the above configuration, since the first image is compressed and transmitted from the information processing apparatus to the portable display device. Therefore, the first image can be transmitted at a high speed, thereby reducing a delay from when the first image is generated to when the first image is displayed on the portable display device.
The information processing program may cause the computer to act as second virtual camera control means. The second virtual camera control means sets, based on the position of the object in the virtual world, the second virtual camera for generating an image of the virtual world, in a position different from the position of the first virtual camera such that the object is included in the second image.
According to the above configuration, an image different from the image displayed on the portable display device is displayed on another display device connected to the information processing apparatus. Therefore, images created according to the respective purposes of use can be displayed on the display devices suitable for the user.
The second virtual camera control means may set the second virtual camera in a position apart from the object by a distance longer than the distance between the object and the first virtual camera. The display control means may display, on the other display device, as the second image, a range of the virtual world, which range is broader than the range of the virtual world as the first image.
According to the above configuration, an image of the virtual world, which is larger in display range than the image of the virtual world displayed on the portable display device, is displayed on the other display device connected to the information processing apparatus. Therefore, when providing the user with the state of the virtual world, an image suitable for the user's operation can be displayed on each of the display devices.
The second virtual camera control means may set the second virtual camera in a position in the virtual world, from which the second virtual camera views the object in a manner of bird's eye viewing. The display control means may display, on the other display device, as the second image, an image in which the object arranged in the virtual world is viewed in a manner of bird's eye viewing.
According to the above configuration, an image of the virtual world according to the attitude of the portable display device is displayed on the portable display device, while an image in which the virtual world is viewed in a manner of bird's eye viewing is displayed on the other display device connected to the information processing apparatus. Therefore, when providing the user with the state of the virtual world, an image suitable for the user's operation can be displayed on each of the display devices.
The second virtual camera control means may change the line-of-sight direction of the second virtual camera in the virtual world, in accordance with a change in the line-of-sight direction of the first virtual camera in the virtual world.
According to the above configuration, it is possible to realize a display control in which, when the direction of the virtual world displayed on the portable display device changes, the direction of the virtual world displayed on the other display device also changes in the same direction as the virtual world displayed on the portable display device.
Another example of a configuration of a computer-readable storage medium according to the exemplary embodiments has stored therein an information processing program executed on a computer of an information processing apparatus which is capable of displaying an image on a portable display device. The portable display device outputs at least attitude data according to an attitude of a body of the portable display device. The information processing program causes the computer to act as load obtaining means, first virtual camera control means, and display control means. The load obtaining means obtains data based on a load applied to a load detection device. The first virtual camera control means controls a first virtual camera which generates an image of the virtual world, based on the data obtained by the load obtaining means, and the attitude data. The display control means displays, on the portable display device, a first image representing the virtual world viewed from the first virtual camera.
According to the above configuration, when the user performs an operation by using the load detection device and thereby a process of displaying an image of a virtual world based on the user's operation is performed, the user is allowed to view the result of the process on the portable display device. Therefore, the user is allowed to view an image displayed on the portable display device while holding the portable display device. Accordingly, for example, the user is allowed to perform an operation in a new operation environment, and allowed to view the result of the process in a favorable situation for the user in accordance with the operation environment. Further, since the first virtual camera for generating an image of a virtual world displayed on the portable display device is controlled based on the user' operation using the load detection device and the attitude of the portable display device, when the user turns the portable display device to his/her desired direction and performs an operation by using the load detection device, an image of a virtual world in the direction can be displayed on the portable display device. Thus, the user is allowed to operate the first virtual camera by moving the portable display device.
The exemplary embodiments may be implemented in the form of an information processing system including the above-mentioned means, or in the form of an information processing method including actions performed by the above-mentioned means.
According to the exemplary embodiments, when the user performs an operation based on his/her action and thereby a process based on the user's action is performed, the user is allowed to view the result of the process in a favorable situation for the user.
These and other objects, features, aspects and advantages of the exemplary embodiments will become more apparent from the following detailed description when taken in conjunction with the accompanying drawings.